判断一个给定区间例如[10,32000]之间的回文素数有那些?

来源:百度知道 编辑:UC知道 时间:2024/09/20 20:31:30
判断一个给定区间例如[10,32000]之间的回文素数有那些?

/*判断一个给定区间例如[10,32000]之间的回文素数有那些*/
#include <stdio.h>
#include <math.h>

int main(int argc, char *argv[])
{
int i;

for (i = 10; i < 32001; i++)
{
if (HunWen(i) && SuShu(i))
{
printf("%d\t", i);
}
}

return 0;
}

int HunWen(int n)
{
int i, t = n, bit = 0;
int a[5];

while (t > 0)
{
a[bit++] = t % 10;
t /= 10;
}

for (i = 0; i < bit/2; i++)
{
if (a[i] != a[bit-i-1])
{
break;
}
}

if (i == bit/2)
{
return 1;
}
else
{
return 0;
}
}

int SuShu(int n)
{
int i;

for (i = 2; i < n; i++)
{
if (n % i == 0)
{
break;
}
}

if (i == n)
{
return 1;
}
else
{
return